﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Factory
{
    class FactoryDescribe
    {
        /*
         *工厂模式 是比较成熟的  用的也比较多的设计模式。。。还有简单工厂。。。简单工厂不属于设计模式，因为
         * 他不符合面向对象啊六大原则中的   开闭原则。。。
         *
         * 工厂模式动机:在软件系统中，经常面临着创建对象的工作，由于需求的变化，要创建的对象的具体类型经常变化
         * 根据面向对象设计原则中的   依赖抽象  不能依赖细节  所以就要绕开  new才行
         *
         * 官方定义:定义一个创建对象的接口，把创建对象的行为延时到子类，把早绑定变成晚绑定，达到解耦的目的。
         * 并没有消灭依赖   只要把依赖进行了转移
         *
         *
         *
         *
         * 在本地中，后期在增加PLC种类的时候，比如增加台达PLC，只要增加一个台达PLC的工厂和一个台达PLC的具体类，
         * 只要拓展代码，而不用修改以前的代码。。。符合设计原则的开放拓展封闭修改原则
         */
    }
}
